package com.bsj.sipgateway.mysql.bsj.vehicle.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 车辆信息
 * </p>
 *
 * @author wph
 * @since 2022-08-04
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("vehicle")
public class Vehicle implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 车辆Id
     */
      @TableId(value = "vehicleId", type = IdType.AUTO)
    private Long vehicleId;

    /**
     * 所属车组ID
     */
    @TableField("groupId")
    private Integer groupId;

    /**
     * 省域ID
     */
    @TableField("provincialId")
    private String provincialId;

    /**
     * 市域ID
     */
    @TableField("cityAndCountyId")
    private String cityAndCountyId;

    /**
     * 制造商ID
     */
    @TableField("manufacturerId")
    private String manufacturerId;

    /**
     * 终端IMEI
     */
    @TableField("terminalIMEI")
    private String terminalIMEI;

    /**
     * 货物
     */
    @TableField("goods")
    private String goods;

    /**
     * 终端ID
     */
    @TableField("terminalId")
    private String terminalId;

    /**
     * 车牌
     */
    @TableField("plate")
    private String plate;

    /**
     * 终端编号
     */
    @TableField("terminalNo")
    private String terminalNo;

    /**
     * 伪ip地址
     */
    @TableField("ipAddress")
    private String ipAddress;

    /**
     * sim卡号
     */
    @TableField("sim")
    private String sim;

    /**
     * 终端类型
     */
    @TableField("terminalType")
    private String terminalType;

    /**
     * 通讯类型
     */
    @TableField("commType")
    private String commType;

    /**
     * 车牌颜色
     */
    @TableField("plateColor")
    private String plateColor;

    /**
     * 车辆颜色
     */
    @TableField("vehicleColor")
    private String vehicleColor;

    /**
     * 车辆类型
     */
    @TableField("vehicleType")
    private String vehicleType;

    /**
     * 发动机编号
     */
    @TableField("engineNo")
    private String engineNo;

    /**
     * 车架号
     */
    @TableField("frameNo")
    private String frameNo;

    /**
     * 安装日期
     */
    @TableField("installDate")
    private LocalDateTime installDate;

    /**
     * 车主名称
     */
    @TableField("owner")
    private String owner;

    /**
     * 性别(1先生，2女士)
     */
    @TableField("sex")
    private String sex;

    /**
     * 车主联系电话
     */
    @TableField("phone")
    private String phone;

    /**
     * 邮件
     */
    @TableField("email")
    private String email;

    /**
     * 证件号码
     */
    @TableField("license")
    private String license;

    /**
     * 工作单位
     */
    @TableField("company")
    private String company;

    /**
     * 地址
     */
    @TableField("address")
    private String address;

    /**
     * 备注
     */
    @TableField("remark")
    private String remark;

    /**
     * 车辆品牌
     */
    @TableField("brand")
    private String brand;

    /**
     * ICCID
     */
    @TableField("iccid")
    private String iccid;

    /**
     * 是否高危,1是，0否
     */
    @TableField("isDangerous")
    private Integer isDangerous;

    /**
     * isLoan
     */
    @TableField("isLoan")
    private String isLoan;

    /**
     * 服务到期时间
     */
    @TableField("serviceExpireTime")
    private String serviceExpireTime;

    /**
     * 安装地点
     */
    @TableField("installPlace")
    private String installPlace;

    /**
     * 更新时间
     */
    @TableField("updateTime")
    private LocalDateTime updateTime;

    /**
     * 显示判断标记(1显示，0表示车辆在回收站中)
     */
    @TableField("delFlag")
    private Integer delFlag;

    /**
     * 插入时间
     */
    @TableField("createTime")
    private LocalDateTime createTime;

    /**
     * 服务密码
     */
    @TableField("serviceCode")
    private String serviceCode;

    /**
     * 车辆形状----车辆类型
     */
    @TableField("vehicleShape")
    private String vehicleShape;

    /**
     * 库存状态(1：库存状态   2:装机状态   3:拆机状态) 
     */
    @TableField("storeState")
    private Integer storeState;

    /**
     * 往库存中添加设备时候的当前用户
     */
    @TableField("storeUserID")
    private Integer storeUserID;

    /**
     * 标识是否在库存车组
     */
    @TableField("isStore")
    private Integer isStore;

    /**
     * 装机人员
     */
    @TableField("installPerson")
    private String installPerson;

    /**
     * 安装类型
     */
    @TableField("installType")
    private String installType;

    /**
     * sim卡流量
     */
    @TableField("datausage")
    private Double datausage;

    /**
     * car900对应车辆id
     */
    @TableField("cvehicleId")
    private Long cvehicleId;

    /**
     * 车辆对应的圆形区域
     */
    @TableField("circle")
    private String circle;

    /**
     * 摄像头个数
     */
    @TableField("cameraNum")
    private Integer cameraNum;

    /**
     * 经常停留点
     */
    @TableField("staypoint")
    private String staypoint;

    /**
     * 车辆过期时间
     */
    @TableField("expireDate")
    private LocalDateTime expireDate;

    /**
     * 昵称
     */
    @TableField("nickName")
    private String nickName;

    /**
     * 续费多少个月
     */
    @TableField("renewNum")
    private Integer renewNum;

    /**
     * 激活时间
     */
    @TableField("activationTme")
    private LocalDateTime activationTme;

    /**
     * 安装备注
     */
    @TableField("installRemark")
    private String installRemark;

    /**
     * KM系列里程统计初始化里程
     */
    @TableField("initMilage")
    private Double initMilage;

    /**
     * 续费年限
     */
    @TableField("displayYear")
    private Integer displayYear;

    /**
     * 其他平台车的标识
     */
    @TableField("isVender")
    private Integer isVender;

    @TableField("accRoundTime")
    private String accRoundTime;

    /**
     * 摄像头路数配置
     */
    @TableField("cameraLine")
    private String cameraLine;

    /**
     * 产品类型 0-部标类 1-视频类
     */
    @TableField("productType")
    private String productType;

    @TableField("videoPosRateStatus")
    private Integer videoPosRateStatus;

    @TableField("contact1")
    private String contact1;

    @TableField("contact2")
    private String contact2;

    @TableField("linkTel2")
    private String linkTel2;

    @TableField("alarmLinkTel")
    private String alarmLinkTel;

    /**
     * 录入员
     */
    @TableField("recordPerson")
    private String recordPerson;

    @TableField("csBrand")
    private String csBrand;

    /**
     * 缴费到期时间-->终端服务到期时间
     */
    @TableField("renewalExpireDate")
    private LocalDateTime renewalExpireDate;

    /**
     * 业务员
     */
    @TableField("salesman")
    private String salesman;

    /**
     * 车籍地
     */
    @TableField("carhrough")
    private String carhrough;

    /**
     * 座位/吨位
     */
    @TableField("seat")
    private String seat;

    /**
     * 年审日期
     */
    @TableField("nextReturnDue")
    private LocalDateTime nextReturnDue;

    /**
     * 运营商
     */
    @TableField("operator")
    private String operator;

    /**
     * 道路运输证号
     */
    @TableField("roadPermit")
    private String roadPermit;

    /**
     * 运营类型
     */
    @TableField("operatingTypes")
    private String operatingTypes;

    /**
     * 行车证号码
     */
    @TableField("vehicleLicense")
    private String vehicleLicense;

    /**
     * 终端厂家编号
     */
    @TableField("factoryNo")
    private String factoryNo;

    /**
     * 行车记录仪版本
     */
    @TableField("tripREC")
    private String tripREC;

    /**
     * 对接外设:  bit0.主动安全防御终端（Adas+DSM） bit1.油耗传感器 bit2.温度传感器 bit3.正反转传感器 bit4.载重传感器（空重载） bit5. 载重计量器 bit6.胎压传感器
     */
    @TableField("peripheral")
    private Integer peripheral;

    /**
     * 厂商唯一编码,终端厂家代码
     */
    @TableField("producerID")
    private String producerID;

    /**
     * 用作主动安全设备协议类型，默认0: 苏标 1:佛山标准 2：河北标准，3：吉林标准 (sim卡流量预警值)  4:沪标标准, 5:黑龙江标准, 6:粤标标准, 7:陕西标准，8：川标，9：天津标准
     */
    @TableField("percentageOfFlow")
    private Integer percentageOfFlow;

    /**
     * 视频播放时长,单位:分钟  0为无限制
     */
    @TableField("videoPlayTime")
    private Integer videoPlayTime;

    @TableField("operationState")
    private String operationState;

    /**
     * 自定义编号
     */
    @TableField("customNo")
    private String customNo;

    /**
     * 自定义信息展示
     */
    @TableField("customMessage")
    private String customMessage;

    /**
     * 服务供应商
     */
    @TableField("serviceProvider")
    private String serviceProvider;

    /**
     * 扩展字段
     */
    @TableField("extend")
    private String extend;

    /**
     * 所属行业
     */
    @TableField("industry")
    private String industry;

    /**
     * 籍贯
     */
    @TableField("area")
    private String area;

    /**
     * 业户名称
     */
    @TableField("ownerproperty")
    private String ownerproperty;

    /**
     * 车辆运营状态
     */
    @TableField("vehiclestate")
    private String vehiclestate;

    @TableField("version")
    private Integer version;

    /**
     * 油卡号，多个用,分隔
     */
    @TableField("gasCard")
    private String gasCard;

    /**
     * 加油型号
     */
    @TableField("gasType")
    private String gasType;

    /**
     * 产品类型----一立
     */
    @TableField("machineryProductType")
    private String machineryProductType;

    /**
     * 设备类型----一立
     */
    @TableField("machineryEquipmentType")
    private String machineryEquipmentType;

    /**
     * 设备型号
     */
    @TableField("deviceType")
    private String deviceType;

    /**
     * 摄像头位置点名称（ipc）
     */
    @TableField("cameraPositionName")
    private String cameraPositionName;

    /**
     * 摄像头位置类型（ipc）
     */
    @TableField("cameraPositionType")
    private String cameraPositionType;

    /**
     * 摄像头位置经度（ipc）
     */
    @TableField("cameraPositionLon")
    private Double cameraPositionLon;

    /**
     * 摄像头位置纬度（ipc）
     */
    @TableField("cameraPositionLat")
    private Double cameraPositionLat;

    /**
     * 车型（清扫车）
     */
    @TableField("vehicleModel")
    private String vehicleModel;

    /**
     * 清扫速度，平方米每秒（清扫车）
     */
    @TableField("sweepingSpeed")
    private Double sweepingSpeed;


    @TableField("cameraAlias")
    private String cameraAlias;

    @TableField("cameraChannelId")
    private String cameraChannelId;

    @TableField
    private String videoIp;

    private String videoPort;

}
